package fr.cnam.ratpProject.client.activities.searchStation;

import java.util.ArrayList;

import com.google.gwt.core.shared.GWT;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.AcceptsOneWidget;
import com.google.gwt.user.client.ui.IsWidget;

import fr.cnam.ratpProject.client.services.ReseauRatpService;
import fr.cnam.ratpProject.client.services.ReseauRatpServiceAsync;
import fr.cnam.ratpProject.client.utils.GlueProvider;
import fr.cnam.ratpProject.client.utils.RatpActivity;
import fr.cnam.ratpProject.sharedDatas.Ligne;
import fr.cnam.ratpProject.sharedDatas.Station;

public class ShowStation extends RatpActivity{

		
		public interface ShowStationView extends IsWidget
		{

			void buildView(Station station, ArrayList<Ligne> lignes);
			
		}
		
		
		private ShowStationView view;
		
		private Station station = null;
		
		private ArrayList<Ligne> lignes = null;
		
		private ReseauRatpServiceAsync ratpService = GWT.create(ReseauRatpService.class);


		@Override
		public void start(AcceptsOneWidget panel, EventBus eventBus) {
			view = GlueProvider.INSTANCE.getClientFactory().getShowStationView();
			attachView(panel, view);
			
//			station = ((ShowStationPlace)this.here).getStation();
			
//			ratpService.getReseauMetro(new AsyncCallback<ArrayList<Ligne>>() {
//				
//				@Override
//				public void onSuccess(ArrayList<Ligne> result) {
//					lignes = result;
//					
//					//On cherche les lignes de la station
//					if(lignes !=null && station !=null)
//					{
//						ArrayList<Ligne> lignesToShow = new ArrayList<Ligne>();
//						
//						for(Ligne ligne:lignes)
//						{
//							for(Station stat:ligne.getLigne())
//							{
//								if(stat.getName().equals(station.getName()))
//								{
//									lignesToShow.add(ligne);
//								}
//							}
//						}
//						
//						view.buildView(station, lignesToShow);
//						
//						
//					}
//					
//					
//				}
				
//				@Override
//				public void onFailure(Throwable caught) {
//					// TODO Auto-generated method stub
//					Ligne l = new Ligne();
//					l=null;
//					
//				}
//			});
			
			 
		}
}
